package com.css.dzj.dzjap.modules.lawenforcesuper.entity;

import com.fasterxml.jackson.annotation.JsonFormat;

import javax.persistence.*;
import java.sql.Timestamp;
import java.util.Date;
import java.util.Objects;

@Entity
@Table(name = "AP_SUPERSIVE_TASK_INFO", schema = "DZJAP", catalog = "")
public class ApSupersiveTaskInfoEntity {
    private String id;
    private String superType;
    private Integer superTaskProporState;
    private Integer superTaskNum;
    private Integer superTaskProporProvin;
    private Integer superTaskProporLocal;
    private String superTitle;
    private String createPerson;
    private Date createTime;
    private String createPersonLocation;
    private String taskContent;
    private String enterpriseNotice;
    @Id
    @Column(name = "ID")
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "SUPER_TYPE")
    public String getSuperType() {
        return superType;
    }

    public void setSuperType(String superType) {
        this.superType = superType;
    }

    @Basic
    @Column(name = "SUPER_TASK_PROPOR_STATE")
    public Integer getSuperTaskProporState() {
        return superTaskProporState;
    }

    public void setSuperTaskProporState(Integer superTaskProporState) {
        this.superTaskProporState = superTaskProporState;
    }

    @Basic
    @Column(name = "SUPER_TASK_NUM")
    public Integer getSuperTaskNum() {
        return superTaskNum;
    }

    public void setSuperTaskNum(Integer superTaskNum) {
        this.superTaskNum = superTaskNum;
    }

    @Basic
    @Column(name = "SUPER_TASK_PROPOR_PROVIN")
    public Integer getSuperTaskProporProvin() {
        return superTaskProporProvin;
    }

    public void setSuperTaskProporProvin(Integer superTaskProporProvin) {
        this.superTaskProporProvin = superTaskProporProvin;
    }

    @Basic
    @Column(name = "SUPER_TASK_PROPOR_LOCAL")
    public Integer getSuperTaskProporLocal() {
        return superTaskProporLocal;
    }

    public void setSuperTaskProporLocal(Integer superTaskProporLocal) {
        this.superTaskProporLocal = superTaskProporLocal;
    }

    @Basic
    @Column(name = "SUPER_TITLE")
    public String getSuperTitle() {
        return superTitle;
    }

    public void setSuperTitle(String superTitle) {
        this.superTitle = superTitle;
    }

    @Basic
    @Column(name = "CREATE_PERSON")
    public String getCreatePerson() {
        return createPerson;
    }

    public void setCreatePerson(String createPerson) {
        this.createPerson = createPerson;
    }

    @JsonFormat(shape= JsonFormat.Shape.STRING,pattern="yyyy-MM-dd",timezone="GMT+8")
    @Basic
    @Column(name = "CREATE_TIME")
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Basic
    @Column(name = "CREATE_PERSON_LOCATION")
    public String getCreatePersonLocation() {
        return createPersonLocation;
    }

    public void setCreatePersonLocation(String createPersonLocation) {
        this.createPersonLocation = createPersonLocation;
    }

    @Basic
    @Column(name = "TASK_CONTENT")
    public String getTaskContent() {
        return taskContent;
    }

    public void setTaskContent(String taskContent) {
        this.taskContent = taskContent;
    }
    @Basic
    @Column(name = "ENTERPRISE_NOTICE")
    public String getEnterpriseNotice() {
        return enterpriseNotice;
    }
    public void setEnterpriseNotice(String enterpriseNotice) {
        this.enterpriseNotice = enterpriseNotice;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {return true;}
        if (o == null || getClass() != o.getClass()) {return false;}
        ApSupersiveTaskInfoEntity that = (ApSupersiveTaskInfoEntity) o;
        return Objects.equals(id, that.id) &&
                Objects.equals(superType, that.superType) &&
                Objects.equals(superTaskProporState, that.superTaskProporState) &&
                Objects.equals(superTaskNum, that.superTaskNum) &&
                Objects.equals(superTaskProporProvin, that.superTaskProporProvin) &&
                Objects.equals(superTaskProporLocal, that.superTaskProporLocal) &&
                Objects.equals(superTitle, that.superTitle) &&
                Objects.equals(createPerson, that.createPerson) &&
                Objects.equals(createTime, that.createTime) &&
                Objects.equals(createPersonLocation, that.createPersonLocation)&&
                Objects.equals(taskContent, that.taskContent)&&
                Objects.equals(enterpriseNotice, that.enterpriseNotice);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, superType, superTaskProporState, superTaskNum, superTaskProporProvin, superTaskProporLocal, superTitle, createPerson, createTime, createPersonLocation, taskContent,enterpriseNotice);
    }
}
